The same IT task is often performed on multiple machines within an enterprise. For instance, a certain suite of programs may be installed on every employee computer. Alternatively, every server within an enterprise may need to be updated in order to reflect changes in software and hardware to the network. Or, for example, a patch may be provided that needs to be applied to every installed version of a certain software program within an enterprise.
While existing enterprise software packages automate certain aspects of IT deployment and maintenance, individual services are generally offered by specific vendors in the form of discrete products. This requires IT professionals to become trained and certified on multiple products, for instance a helpdesk product, an anti-virus product, and an inventory management product, as well as to manage different protocols during normal workflow. The various products are often not interoperable, making coordination between them, for instance with respect to scheduling tasks or sharing information, impossible.
In addition, individual tasks may need to be deployed across different subsets of devices on a system. While individual devices can generally be identified by IP address, for instance, the manual selection of what devices should be included or excluded from a group is often time-consuming and prone to inaccuracy. IT professionals must also ensure that installation and deployment activities comply with company policies and license terms. Furthermore, while repetitive, these steps are often performed manually, on a piecemeal basis, as they may need to happen at different times depending on the needs and desires of end users. All of these factors increase the cost of maintaining and managing an enterprise network.
What is needed, therefore, are systems and methods of reducing the administrative and resources burden associated with carrying out IT tasks.